home *** CD-ROM | disk | FTP | other *** search
/ Aminet 5 / Aminet 5 - March 1995.iso / Aminet / dev / misc / LEDA_gene.lha / LEDA-3.1c-generic / incl / LEDA / impl / seq_impl.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-08-05  |  1.4 KB  |  61 lines

  1. /*******************************************************************************
  2. +
  3. +  LEDA  3.1c
  4. +
  5. +
  6. +  seq_impl.h
  7. +
  8. +
  9. +  Copyright (c) 1994  by  Max-Planck-Institut fuer Informatik
  10. +  Im Stadtwald, 6600 Saarbruecken, FRG     
  11. +  All rights reserved.
  12. *******************************************************************************/
  13.  
  14.  
  15.  
  16. typedef int seq_impl_item;
  17.  
  18. class seq_impl  {
  19.  
  20. virtual int  cmp(GenPtr, GenPtr) const = 0;
  21. virtual int  int_type()          const = 0;
  22. virtual void clear_key(GenPtr&)  const = 0;
  23. virtual void clear_inf(GenPtr&)  const = 0;
  24. virtual void copy_key(GenPtr&)   const = 0;
  25. virtual void copy_inf(GenPtr&)   const = 0;
  26.  
  27.  
  28. public:
  29.  
  30.  seq_impl();
  31.  seq_impl(const seq_impl&);
  32. ~seq_impl();
  33.  
  34. seq_impl& operator=(const seq_impl&);
  35. seq_impl& conc(seq_impl&);
  36.  
  37. seq_impl_item insert(GenPtr,GenPtr);
  38. seq_impl_item insert_at_item(seq_impl_item,GenPtr,GenPtr);
  39. seq_impl_item lookup(GenPtr)      const;
  40. seq_impl_item locate(GenPtr)      const;
  41. seq_impl_item locate_pred(GenPtr) const;
  42. seq_impl_item succ(seq_impl_item) const;
  43. seq_impl_item pred(seq_impl_item) const;
  44. seq_impl_item item(GenPtr)        const;
  45.  
  46. GenPtr key(seq_impl_item) const;
  47. GenPtr inf(seq_impl_item) const;
  48.  
  49. void reverse_items(seq_impl_item,seq_impl_item); 
  50.  
  51. void del(GenPtr); 
  52. void del_item(seq_impl_item); 
  53. void split_at_item(seq_impl_item,seq_impl&,seq_impl&);
  54. void change_inf(seq_impl_item,GenPtr);
  55. void clear();
  56.  
  57. int  size()  const;
  58.  
  59. };
  60.